Monadic Corecursion |deenition, Fusion Laws, and Applications|
نویسنده
چکیده
This paper investigates corecursive deenitions which are at the same time monadic. This corresponds to functions that generate a data structure following a corecursive process, while producing a computational eeect modeled by a monad. We introduce a functional, called monadic anamorphism, that captures deenitions of this kind. We also explore another class of monadic recursive functions, corresponding to the composition of a monadic anamorphism followed by (the lifting of) a function de-ned by structural recursion on the data structure that the monadic anamorphism generates. Such kind of functions are captured by so-called monadic hylomorphism. We present transformation laws for these monadic functionals. Two non-trivial applications are also described.
منابع مشابه
A Thesis Proposal on Final Coalgebras
I present an overview of nal coalgebras together with a description of initial algebras, showing the analogies between the two. In particular , I show how initiality of algebras leads to the properties of deenition by recursion and proof by induction. I then show how nal coalgebras have the analogous properties of deenition by corecursion and proof by coinduction, motivating the latter by Peter...
متن کاملProof Methods for Corecursive Programs
Recursion is a well-known and powerful programming technique, with a wide variety of applications. The dual technique of corecursion is less well-known, but is increasingly proving to be just as useful. This article is a tutorial on the four main methods for proving properties of corecursive programs: fixpoint induction, the approximation (or take) lemma, coinduction, and fusion.
متن کاملParametric corecursion
This paper gives a treatment of substitution for \parametric" objects in nal coalgebras, and also presents principles of deenition by corecursion for such objects. The substitution results are coalgebraic versions of well-known consequences of initiality, and the work on corecursion is a general formulation which allows one to specify elements of nal coalgebras using systems of equations. One s...
متن کاملA Coinductive Calculus for Asynchronous Side-Effecting Processes
We present an abstract framework for concurrent processes in which atomic steps have generic side effects, handled according to the principle of monadic encapsulation of effects. Processes in this framework are potentially infinite resumptions, modelled using final coalgebras over the monadic base. As a calculus for such processes, we introduce a concurrent extension of Moggi’s monadic metalang...
متن کاملMonadic Fold, Monadic Build, Monadic Short Cut Fusion
Short cut fusion improves the efficiency of modularly constructed programs by eliminating intermediate data structures produced by one program component and immediately consumed by another. We define a combinator which expresses uniform production of data structures in monadic contexts, and is the natural counterpart to the well-known monadic fold which consumes them. Like the monadic fold, our...
متن کامل